using Abc.Core.Entities;

using Furion;
using Furion.DatabaseAccessor;
using Furion.DependencyInjection;

using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Caching.Memory;

using Serilog;

namespace Abc.Application
{
    [Injection(Proxy = typeof(LogDispatchProxy))]
    public class DeveloperService : IDeveloperService, ITransient
    {
        private readonly ILogger _logger;
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly IRepository<Permission> _permissionRepository;
        private readonly IMemoryCache _memoryCache;

        public DeveloperService(IRepository<Permission> permissionRepository
            , IHttpContextAccessor httpContextAccessor
            , ILogger logger)
        {
            _logger = logger;
            _permissionRepository = permissionRepository;
            _memoryCache = App.GetService<IMemoryCache>();
            _httpContextAccessor = httpContextAccessor;
        }
    }

    public interface IDeveloperService
    {
    }
}